﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace T06ArrayTpye
{
    class Program
    {
        static void Main(string[] args)
        {
            #region 一维数组
            int[] array1 = new int[10];
            int[] array2 = new int[] {1,2,3,4,5,6,7,8,9,10 };

            for (int j = 0; j < array2.Length; j++)
            {
                array1[j] = (j + 1) * 10;
            }

            foreach (int  _x in array2)
            {
                Console.Write($"{_x}\t");
            }
            Console.WriteLine("==============一维数组================");
            #endregion 

            #region Array包装类
            //system.Array的使用，拆箱装箱
            Console.WriteLine(array1.Max());
            Console.WriteLine(array1.Min());
            foreach (int _x in array1.Reverse())
            {
                Console.Write($"{_x}\t");
            }
            Console.WriteLine("==============Array包装类================");
            #endregion 

            #region  多维数组
            int[,] array3 =new int[3,4];//二维数组
            int[,,] array4 =new int[3,4,5];//三维数组
            for (int i = 0; i < array3.GetLength(0); i++)//0--表示二维数组的第1维
			{
                for (int j = 0; j < array3.GetLength(1); j++)//1--表示二维数组的第2维
			    {
                    array3 [i,j]=(i+1)*(j+1);
                    Console.Write($"{array3[i,j]}\t");
	    		}
                Console.WriteLine();
			}
            Console.WriteLine("==============多维数组================");
            #endregion 

            #region  数组的数组
            int[][] array5 =new int[3][];//具有三个数组元素的数组

            //初始化
            //for (int i = 0; i < 3; i++)
			//{
            //    array5[i]=new int[4];//创建每个数组元素--为4个的元素的数组
			//}
            array5[0]=new int[2]{1,2};
            array5[1]=new int[3]{3,4,5};
            array5[2]=new int[4]{6,7,8,9};

            foreach (int[] arr in array5 )
	        {
                foreach (int _x in arr)
            	{
                    Console.Write($"{_x}\t");
	            }
	        }
            Console.WriteLine();
            Console.WriteLine("==============数组的数组================");

            /*
             * 快捷键
             * Ctrl+M,M 折叠代码
             * Ctrl+K,C 添加行注释
             * Ctrl+K,U 取消行注释
             * Ctrl+K,D 格式化代码
             */             
            #endregion 

            Console.ReadKey();
        }
    }
}
